Don't expose xenstore daemon-only permission bits through python bindings.
authorcl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk>
Tue, 9 Aug 2005 08:44:29 +0000 (08:44 +0000)
committercl349@firebug.cl.cam.ac.uk <cl349@firebug.cl.cam.ac.uk>
Tue, 9 Aug 2005 08:44:29 +0000 (08:44 +0000)
These bits are daemon-only, never come though to userspace.  We already
changed them once and broke compilation: better they had never been
referenced.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
tools/python/xen/lowlevel/xs/xs.c

index d0c054c2d79027b0d674c778fb1a1d8b472f9e8b..2552b2e9493307fca1dbf8446aa790e02243fa33 100644 (file)
@@ -253,12 +253,10 @@ static PyObject *xspy_get_permissions(PyObject *self, PyObject *args,
     }
     val = PyList_New(perms_n);
     for (i = 0; i < perms_n; i++, perms++) {
-        PyObject *p = Py_BuildValue("{s:i,s:i,s:i,s:i,s:i}",
+        PyObject *p = Py_BuildValue("{s:i,s:i,s:i}",
                                     "dom",   perms->id,
                                     "read",  (perms->perms & XS_PERM_READ),
-                                    "write", (perms->perms & XS_PERM_WRITE),
-                                    "exist", (perms->perms & XS_PERM_ENOENT_OK),
-                                    "owner", (perms->perms & XS_PERM_OWNER));
+                                    "write",  (perms->perms & XS_PERM_WRITE));
         PyList_SetItem(val, i, p);
     }
  exit:
@@ -281,8 +279,7 @@ static PyObject *xspy_set_permissions(PyObject *self, PyObject *args,
     static char *arg_spec = "sO";
     char *path = NULL;
     PyObject *perms = NULL;
-    static char *perm_names[] = { "dom", "read", "write", "create", "owner",
-                                 NULL };
+    static char *perm_names[] = { "dom", "read", "write", NULL };
     static char *perm_spec = "i|iiii";
 
     struct xs_handle *xh = xshandle(self);
@@ -315,15 +312,9 @@ static PyObject *xspy_set_permissions(PyObject *self, PyObject *args,
         int dom = 0;
         /* Read/write perms. Set these. */
         int p_read = 0, p_write = 0;
-        /* Create/owner perms. Ignore them.
-         * This is so the output from get_permissions() can be used
-         * as input to set_permissions().
-         */
-        int p_create = 0, p_owner = 0;
         PyObject *p = PyList_GetItem(perms, i);
         if (!PyArg_ParseTupleAndKeywords(tuple0, p, perm_spec, perm_names,
-                                        &dom, &p_read, &p_write, &p_create,
-                                        &p_owner))
+                                        &dom, &p_read, &p_write))
             goto exit;
         xsperms[i].id = dom;
         if (p_read)